Various measures may be used to ensure secure communications. For example, securing communications may comprise use of encryption to protect communicated data against unwanted access. In this regard, encryption may allow converting data from its original, ordinary form (e.g., plaintext) to a corresponding encrypted form which is typically unintelligible (e.g., ciphertext), in accordance with an encryption standard and/or algorithm, such that any unauthorized recipient (whether by accident or by deliberate interception) may not be able to view the original data, without knowing particular encryption algorithm(s) used and/or any pertinent parameters or information (e.g., encryption/decryption keys) necessary for decrypting the data. Various encryption standards and/or algorithms are currently developed and/or used. These encryption standards and/or algorithms may be categorized into different types and classes, such as based on the way the encryption/decryption are applied to the data, the mechanisms by which the encryption/decryption are applied, and/or characteristics of parameters (e.g., keys) used in the encryption/decryption.
For example, some algorithms may be classified as being block cipher based algorithms, meaning that they operate on fixed-length (e.g., particular number of bits) chunks of data, called blocks. On the other hand, in stream cipher based algorithms encryption may comprise combining plaintext digits with a cipher digit stream (e.g., a keystream), to generate the encrypted data, whereby each plaintext digit may be encrypted one at a time with the corresponding digit of the keystream. Some encryption and/or ciphering algorithms may comprise use of hash functions, such as SHA-based algorithms, in which fixed-size bit strings may be generated based on arbitrary blocks of data. Some encryption algorithms may be classified as symmetric-key algorithms, in which communication peers use the same key during encryption and decryption operations—i.e., the same key would be used in encrypting the data at the sender end and in decrypting the received ciphertext at the receiving end. The keys used in symmetric-key operations may be preselected and/or preconfigured (e.g., into the communicating peers), or may be generated dynamically using methods that are configured to ensure that the keys (used by both peers) match. Symmetric-key algorithms include block cipher algorithms, such as the Data Encryption Standard (DES) based algorithm(s) and Advanced Encryption Standard (AES) based algorithm(s), and stream cipher algorithms, such as RC4.
Another class of encryption algorithms is public-key based algorithms, such as the RSA algorithm. In this regard, public-key algorithms incorporate asymmetric-key design, in which two separate keys, one of which is public (i.e., widely known and/or distributed) and the other is private (i.e., only known by particular peer), are typically used. The keys may be mathematically linked, which enables them to be utilized for data encryption and decryption. In this regard, the data may be encrypted using one key (and/or key combination) while the data decryption is performed using the other key (and/or another key combination). For example, in RSA based operations data is encrypted using a public key which is known by all recipients, whereas decryption requires, in addition to the public key, a private key specific to each recipient and used particularly for decryption by that recipient.
While currently used encryption algorithms may provide a measure of security and/or with respect to data communications, certain risks may continue to exist. For example, even encrypted data may be susceptible when encryption keys can be readily and/or easily obtained (directly or indirectly—e.g., by use of guess, brute-force search, and/or Dictionary Program based methods) by un-authorized persons. Accordingly, optimizing and/or improving encryption remains an ongoing objective, particularly with respect to encryption keys and the use thereof.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects, as set forth in the remainder of the present application with reference to the drawings.